home *** CD-ROM | disk | FTP | other *** search
- /* LISTING 1. DOSTBL1.H */
- /* DFA table for Restricted DOS Pathname */
-
- /* Application functions included in resdos_stt */
- extern short alpha(char *);
- extern short alphanum(char *);
- extern short appendpath(char *);
- extern short block(char *);
- extern short cleanup(char *);
- extern short errmsg(char *);
- extern short isdot(char *);
- extern short isEOR(char *);
- extern short isFS(char *);
- extern short isGS(char *);
- extern short pushchar(char *);
- extern short savedrive(char *);
- extern short saveext(char *);
- extern short savefname(char *);
- extern short skip(char *);
-
- /* The state table for restricted DOS pathnames */
- DFATBL syndos_stt[] = {
- /* 0 */ { alpha, 1, ERR, pushchar, errmsg},
- /* 1 */ { isGS, 2, ERR, savedrive, errmsg},
- /* 2 */ { isFS, 3, ERR, appendpath, errmsg},
- /* 3 */ { alpha, 4, ERR, pushchar, errmsg},
- /* 4 */ { isFS, 3, 5, appendpath, skip },
- /* 5 */ { alphanum,4, 6, pushchar, skip },
- /* 6 */ { isdot, 8, 7, savefname, skip },
- /* 7 */ { isEOR, 13, ERR, savefname, errmsg},
- /* 8 */ { alphanum,9, ERR, pushchar, errmsg},
- /* 9 */ { alphanum,11, 10, pushchar, skip },
- /* 10 */ { isEOR, 13, ERR, saveext, errmsg},
- /* 11 */ { alphanum,12, 12, pushchar, skip },
- /* 12 */ { isEOR, 13, ERR, saveext, errmsg},
- /* 13 */ { isEOR, OUT, ERR, cleanup, errmsg},
- };
-